Erreur 1044 SQL=LOCK TABLES `xxx_assets` WRITE

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [Problème] Erreur 1044 SQL=LOCK TABLES `xxx_assets` WRITE

    Bonjour,

    J'ai exactement le même pb que celui décrit sur ce forum (cliquez ici), c.à.d. le message suivant à chaque enregistrement en base :
    Erreur 1044 Access denied for user 'identifiant'@'%' to database 'Nom de la base' SQL=LOCK TABLES `xxx_assets` WRITE

    Mon site est chez Free page perso, comment donner à l'utilisateur de la base de données le droit LOCK TABLES ?

    Bonne nuit.
    HervE
    Dernière édition par hervelam à 06/02/2016, 19h52
    japprecie, les musiques à vivre : https://japprecie.fr
    PHP 8.1.30
    Joomla! 4.4.9
    FLEXIcontent 4.2.1

  • #2
    Re : Erreur 1044 SQL=LOCK TABLES `xxx_assets` WRITE

    C'est pas possible de changer les droits sur les tables sur free.
    Il y a une solution que j'ai trouvé voici un extrait:
    Bonjour,
    étant seul à gérer mon site, j'ai décidé de désactiver la fonction lock et unlock tables. Pour cela, il faut modifier le fichier "mysqli" qui se trouve dans /libraries/joomla/database/driver.
    Dans ce fichier, il faut mettre modifier comme suit :
    public function lockTable($table)
    {
    // $this->setQuery('LOCK TABLES ' . $this->quoteName($table) . ' WRITE')->execute();
    return $this;

    public function unlockTables()
    {
    // $this->setQuery('UNLOCK TABLES')->execute();
    return $this;
    }
    Voir http://newsgroup.lilobzh.com/article...ces.pagesperso

    Par contre cela n'es qu'un compromis, qui risque a long terme de poser d'autres soucis.
    http://www.st42.fr : Astuce et téléchargement d’extension Joomla! et virtuemart
    http://shop.st42.fr Catalogue extentions gratuit et Pro pour Virtuemart et Joomla

    Commentaire


    • #3
      Re : Erreur 1044 SQL=LOCK TABLES `xxx_assets` WRITE

      Merci ! Tu me sauves la vie avec ce contournement
      Pourquoi n'y ai-je pas pensé moi-même ?
      Cela dit, même si j'y avais pensé, je n'aurais pas su où ça se trouvait, vu que je débute sur le sujet.

      Je sais bien qu'à terme j'aurai d'autres pb avec l'hébergement Free pages perso, et qu'il me faudra changer d'hébergeur. (J'ai d'ailleurs déjà qq pb, moins graves que celui-là.) Mais pour commencer, Free c'est pas mal, et j'y avais déjà qq habitudes...

      Encore merci.
      Bonne nuit.
      HervE
      japprecie, les musiques à vivre : https://japprecie.fr
      PHP 8.1.30
      Joomla! 4.4.9
      FLEXIcontent 4.2.1

      Commentaire


      • #4
        Re : Erreur 1044 SQL=LOCK TABLES `xxx_assets` WRITE

        Bonjour,

        Attention, LOCK TABLES n'est pas qu'une commande de confort, mais doit être utilisé lors de mises à jour ou inserton dans des tables ne supportant pas les transactions, ou dans le cas de Joomla! où le mode transactionnel n'est pas utilisé sur les tables InnoDB. Supprimer les locks peut mener à une corruption des storage InnoDB, perte d'index ou autres joyeusetés du même ordre.

        Même avec un seul admin, qui aura une session MySQL en admin, les visteurs du site acquièrent chacub une session. Sans les locks utilisés à bon escient pour éviter les catastrophes sur les tables dont #__session, il faut s'attendre à des plantages et corruption de tables inexpliqués.
        Pas de demande de support par MP.
        S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

        Commentaire


        • #5
          Re : Erreur 1044 SQL=LOCK TABLES `xxx_assets` WRITE

          Je suis d'accord avec toi Jisse,
          mais apparement les anciennes versions de Joomla, ne l'utilisait pas, donc pour un site perso, la solution peut convenir pour ce faire la main.
          http://www.st42.fr : Astuce et téléchargement d’extension Joomla! et virtuemart
          http://shop.st42.fr Catalogue extentions gratuit et Pro pour Virtuemart et Joomla

          Commentaire


          • #6
            Re : Erreur 1044 SQL=LOCK TABLES `xxx_assets` WRITE

            Bonjour,

            Merci pour ta réponse.

            Je ne sais pas ce que c'est, InnoDB !??

            Mes visiteurs ne devraient a priori pas modifier les tables (je ne prévois pas qu'ils se connectent), donc pas de lock.

            Cependant, je crois bien que je vais finir par changer d'hébergeur. Au moins faire un essai ailleurs, pour voir.
            Qu'est-ce que vous me conseillez comme hébergeur gratuit ?

            Une recherche rapide, et j'ai relevé Hostinger, Olympe, ou Hostt, Zetahost... Vous les connaissez ?

            Bonne nuit.
            HervE
            japprecie, les musiques à vivre : https://japprecie.fr
            PHP 8.1.30
            Joomla! 4.4.9
            FLEXIcontent 4.2.1

            Commentaire


            • #7
              Re : Erreur 1044 SQL=LOCK TABLES `xxx_assets` WRITE

              InnoDB est un format de stockage MySQL, qui est utilisé sous Joomla! 3.x, les versions précédentes (1.5 et 2.5) de Joomla! utilisaient le moteur de stockage MyISAM.

              Même sans avoir de compte, tout visiteur modifie au moins une table, à chaque page charhée, la table #__sessions de la base de données, et donc en cas de connexion simultanée, le risque de crash d'index de cette table est réel.

              Mais quand je lis dans ta signature PHP 5.6, mais avec un antédiluvien MySQL 5.0 (pour lequel le support des LOCKS posait de nombreux problèmes), il n'y a rien d'étonnant...

              Quand aux hébergements gratuits, tous ont des limitations sur un point ou un autre.
              Pas de demande de support par MP.
              S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

              Commentaire


              • #8
                Re : Erreur 1044 SQL=LOCK TABLES `xxx_assets` WRITE

                Voir https://magazine.joomla.org/issues/i...omla-site-live
                Aprés en pas chére et bonne vitesse il y a planet hoster et o2switch.
                http://www.st42.fr : Astuce et téléchargement d’extension Joomla! et virtuemart
                http://shop.st42.fr Catalogue extentions gratuit et Pro pour Virtuemart et Joomla

                Commentaire


                • #9
                  Re : Erreur 1044 SQL=LOCK TABLES `xxx_assets` WRITE

                  Envoyé par jisse03 Voir le message
                  InnoDB est un format de stockage MySQL, qui est utilisé sous Joomla! 3.x, les versions précédentes (1.5 et 2.5) de Joomla! utilisaient le moteur de stockage MyISAM.
                  Hum... J'ai du mal à comprendre comment Joomla! peut utiliser un format de stockage donné, alors que ce n'est pas Joomla! qui fournit la base MySQL ? Je veux dire : si mon hébergeur (Free) tourne avec une base MySQL MyISAM, la version Joomla! 3.x la prend quand même, non ? Peut-être avec qq inconvénients alors ? Lesquels ?

                  Envoyé par jisse03 Voir le message
                  Même sans avoir de compte, tout visiteur modifie au moins une table, à chaque page charhée, la table #__sessions de la base de données, et donc en cas de connexion simultanée, le risque de crash d'index de cette table est réel.
                  Je comprends. Effectivement, c'est un risque embêtant.

                  Envoyé par jisse03 Voir le message
                  Mais quand je lis dans ta signature PHP 5.6, mais avec un antédiluvien MySQL 5.0 (pour lequel le support des LOCKS posait de nombreux problèmes), il n'y a rien d'étonnant...
                  C'est sur Free que le MySQL est 5.0. En local je suis en 5.5.24.

                  Bref, plus j'avance et plus je réalise que Free page perso est une mauvaise solution. Avec regret.

                  HervE
                  japprecie, les musiques à vivre : https://japprecie.fr
                  PHP 8.1.30
                  Joomla! 4.4.9
                  FLEXIcontent 4.2.1

                  Commentaire


                  • #10
                    Re : Erreur 1044 SQL=LOCK TABLES `xxx_assets` WRITE

                    Génial cet article ! Complet, détaillé. Exactement ce qu'il me fallait.

                    Y a juste un truc que je dois voir encore, c'est s'ils ont Imagick (ImageMagick). Je vais sûrement devoir essayer pour le savoir.


                    Envoyé par electrocity Voir le message
                    Aprés en pas chére et bonne vitesse il y a planet hoster et o2switch.
                    Je tiens à commencer gratuit. Ensuite, selon la résonance qu'aura mon site, peut-être j'envisagerai de passer sur du payant. Donc je note ces noms-là pour plus tard. Merci !

                    HervE
                    Dernière édition par hervelam à 26/04/2016, 20h19
                    japprecie, les musiques à vivre : https://japprecie.fr
                    PHP 8.1.30
                    Joomla! 4.4.9
                    FLEXIcontent 4.2.1

                    Commentaire


                    • #11
                      Re : Erreur 1044 SQL=LOCK TABLES `xxx_assets` WRITE

                      Yop,

                      J'interviens juste par apport aux hébergeurs gratuits... Moi j'utilise olympe, les inscriptions sont rarement ouvertes mais il n'y a aucune pub (vraiment) et même si certains pourront dire que c'est une usine moi je trouve que pour un "pseudo-débutant" tout est claire, sans trop de complexité et que ça va pas mal (malgré quelques lenteurs de temps en temps)

                      Commentaire


                      • #12
                        Re : Erreur 1044 SQL=LOCK TABLES `xxx_assets` WRITE

                        ImageMagick est même pas fournit sur des VPS(ou à la demande) alors sur des free, il faut oublier
                        http://www.st42.fr : Astuce et téléchargement d’extension Joomla! et virtuemart
                        http://shop.st42.fr Catalogue extentions gratuit et Pro pour Virtuemart et Joomla

                        Commentaire


                        • #13
                          Re : Erreur 1044 SQL=LOCK TABLES `xxx_assets` WRITE

                          [QUOTE=hervelam;1090724]Hum... J'ai du mal à comprendre comment Joomla! peut utiliser un format de stockage donné, alors que ce n'est pas Joomla! qui fournit la base MySQL ? Je veux dire : si mon hébergeur (Free) tourne avec une base MySQL MyISAM, la version Joomla! 3.x la prend quand même, non ? Peut-être avec qq inconvénients alors ? Lesquels ?
                          Dans la syntaxe MySQL, quand tu crées une table, il y a une notion ENGINE avec plusieurs possibilités. Exemple
                          Code:
                          CREATE TABLE IF NOT EXISTS `#__assets` (
                            `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Primary Key',
                              /* autres champs */
                             PRIMARY KEY (`id`),
                            UNIQUE KEY `idx_asset_name` (`name`),
                            KEY `idx_lft_rgt` (`lft`,`rgt`),
                            KEY `idx_parent_id` (`parent_id`)
                          ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
                          Chaque moteur a ses spécificités. InnoDB, utilisé par Joomla! 3.x, permet les modes transactionnels, la gestion des clés étrangères, ce que ne permet pas le moteur plus simple MyISAM.

                          C'est donc bien le créateur d'une table, dans notre cas le script Joomla!, qui décide, en fonction d'un nombre impportant de critères (aura t-on besoin de transactions ou de gérer des clés étrangères, ou de créer des vues, ou...) du type de moteur à utiliser.

                          La vieille version MySQL dont tu disposes sur Free possède vraisemblablement InnoDB, mais dans une version de l'époque (sans support cohérent des LOCKS ni rollback correct). D'où la problématique.

                          Envoyé par hervelam Voir le message
                          C'est sur Free que le MySQL est 5.0. En local je suis en 5.5.24.

                          Bref, plus j'avance et plus je réalise que Free page perso est une mauvaise solution. Avec regret.

                          HervE
                          Free est un FAI, mettant à disposition un espace perso pour héberger des choses simples, mais pas vraiment adapté aux CMS modernes. Ce n'est pas son métier
                          Pas de demande de support par MP.
                          S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

                          Commentaire

                          Annonce

                          Réduire
                          Aucune annonce pour le moment.

                          Partenaire de l'association

                          Réduire

                          Hébergeur Web PlanetHoster
                          Travaille ...
                          X